import java.util.TreeSet;

public class TreeSetDemo1 {
    public static void main(String[] args) {
        //TreeSet是基于 TreeMap 的 NavigableSet 实现。
        // 使用元素的自然顺序对元素进行排序，或者根据创建 set 时提供的 Comparator 进行排序，具体取决于使用的构造方法。
        //根据已经有的比较器来构造一个TreeSet
        TreeSet<Person> treeSet = new TreeSet<>(new PersonComparator());
        Person p1 = new Person("djm",22);
        Person p2 = new Person("tl",23);
        treeSet.add(p1);
        treeSet.add(p2);
        treeSet.add(new Person("zzx",24));

        //弹出treeSet中"最小的元素"
        Person polledFirst = treeSet.pollFirst();
        System.out.println(polledFirst);

        treeSet.add(new Person("fjh",23));
        treeSet.add(new Person("zjc",23));
        treeSet.add(new Person("lkj",23));

        //获取treeSet中的最小的元素
        Person first = treeSet.first();
        System.out.println(first);

        //获取treeSet之中最大的元素
        Person last = treeSet.last();
        System.out.println(last);

        //删除treeSet之中指定的元素
        boolean result = treeSet.remove(p2);
        System.out.println(result);

        //获取treeSet之中的元素个数
        System.out.println(treeSet.size());

        //清空treeSet
        treeSet.clear();
    }
}
